הבעיה שהיא לא מפעילה את המחלקות, קוד:
$loader->register();
בתוך התיקיה של Routes, כל הקבצים בעלי אותו נייםספייס -
framework זה שם התיקיה שבה כל הקבצים קיימים.
13 תשובות
איפה לקחת את המחלקה הזו? אולי המימוש שלה לא תקין.
חוץ מזה, אתה יכול לכתוב פונקציה משלך בשביל זה ואז גם לדאבג אותה ביתר קלות.
מכאן לקחתי -https://gist.github.com/221634
אני חושב שהבעיה היא בניתוב של התיקיה בנייםספייס.. יכול להיות?
יכול להיות.
ניסית להוסיף echo שורה מעל לאינקלוד ולראות איפה הוא מנסה לחפש את הקבצים שלך?
איזה אינקלוד? בפונקציה עצמה SplClassLoader ?
אוקי, בדקתי את זה בלי הפונקציה הזו אלא עשיתי רק Include() לקובץ. בהתחלה לא הופיעה כלום, רק לאחר שהורדתי את הnamespace הקלאס עבד מצוין. אני חושב שמכאן הבעיה, אתה יודע איך אני יכול לטפל בזה שהקלאס לואדר יעבוד?
יכול שאתה יוצר מופע של המחלקה בלי לרשום את הניימספייס?
בהחלט צודק, כעת עובד.
אבל אתה יודע מה הבעיה עם SplClassLoader ? יותר נוח לי אם הקלאס כבר יטען ואני יוכל להשתמש בו כרגע ולא בצורה הזו שלך..
אתה לא תוכל לכתוב משהו אחר חוץ מ
בגלל שככה עובדים ניימספייסים. ואין שום דבר שלא בסדר במחלקה שלך. היא בסה"כ עושה אינקלוד לקובץ, לא יותר מזה.
הדבר הכי מעצבן ב-php זה הסינטקס של הניימספייסים.
זאת אומרת שהטעות הייתה אצלי. לא יצרתי אירוע נכון לאובייקט. חשבתי שהוא טוען את הכל ישירות ואין צורך להשתמש בסגנון שלך.
@intval
גם ה-using, אבל אני די מתעצבן מהסינטקס. כאילו, באמת... באקסלאש? זה נראה לא טוב.